<?xml version='1.0' encoding='ISO-8859-1' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:p="http://primefaces.org/ui"
      xmlns:f="http://java.sun.com/jsf/core">
    <h:head> 
    </h:head>
    <h:body>
        <ui:composition template="/WEB-INF/facelets/templates/template_pagina.xhtml">
            <ui:define name="center">
                <p:tabView id="ProductoTabView" dynamic="true" activeIndex="#{bProducto.activeTabIndex}" orientation="top"
                           style="font-family: Arial, Helvetica, sans-serif;font-size: 14px; font-weight: bold">
                    <!-- tab para registrar un producto -->
                    <p:tab id="tabRegistraProducto" title="#{msg.registroProducto}">
                        <h:form id="formRegistroProducto" styleClass="textoTab">
                            <p:growl globalOnly="true"  id="estadoRegistraProducto" sticky="false"  showDetail="true"  />
                            <p:panel id="datosRegistro" header="#{msg.ingresarDatos}" >
                                <h:panelGrid columns="2"  cellpadding="2"  cellspacing="6" columnClasses="labelOT, valueOT"  >                                                                        
                                   
                                   <h:outputText value="#{msg.tipo} (*)" style="width: 350px;font-weight: bold;"/>
                                   <h:panelGroup>
                                        <p:selectOneMenu id="tipoProducto" rendered="true" requiredMessage="#{msg.datoRequerido}" 
                                                         effect="fade" value="#{bProducto.objProductoRegistra.objTipoProducto.codigoTipo}" required="true">
                                            <f:selectItem itemLabel="#{msg.elegir}" itemValue=""/>
                                            <f:selectItems value="#{tipoProducto.cargarComboTipoProducto}"/>
                                        </p:selectOneMenu>
                                        <h:message for="tipoProducto" showDetail="false" showSummary="true" styleClass="errors"/>
                                    </h:panelGroup>
                                                                        
                                    <h:outputText  value="#{msg.nombreProducto} (*)"  style="width:350px;font-weight:bold;"/>
                                    <h:panelGroup>
                                        <p:inputText id="nombreProducto" value="#{bProducto.objProductoRegistra.nombreProducto}" 
                                                     size="20" maxlength="50"  required="true" requiredMessage="#{msg.datoRequerido}" 
                                                     validatorMessage="#{msg.datoValidacion}" title="Max 50 caracteres">
                                           <f:validateLength minimum="2" maximum="50" />
                                       </p:inputText>
                                       <h:message for="nombreProducto" showDetail="false" showSummary="true" styleClass="errors"/>                                
                                    </h:panelGroup>
                                    
                                    <h:outputText  value="#{msg.descripcion} (*)"  style="width:350px;font-weight:bold;"/>
                                    <h:panelGroup>                                        
                                         <p:inputTextarea id="descripcionProducto" rows="2" cols="50"    
                                                          required="true"   requiredMessage="#{msg.datoRequerido}" title="Descripcion del Producto" 
                                                          autoResize="true" value="#{bProducto.objProductoRegistra.descripcionProducto}"/><br />
                                         <h:message for="descripcionProducto" showDetail="false" showSummary="true" styleClass="errors" />
                                    </h:panelGroup>
                                    
                                    <h:outputText   value="#{msg.precio} (*)"  style="width:350px;font-weight:bold;"/>
                                    <h:panelGroup>
                                        <p:inputText  id="precioProducto" value="#{bProducto.objProductoRegistra.precioSolesProducto}" 
                                                     size="8" maxlength="4"  required="true" requiredMessage="#{msg.datoRequerido}"                                                      
                                                     validatorMessage="#{msg.datoValidacion}" label="Precio de Producto" title="Solo numeros">
                                           <f:validateDoubleRange minimum="1" maximum="9999"/>
                                       </p:inputText>                                       
                                        <h:message for="precioProducto" showDetail="false" showSummary="true" styleClass="errors"/>                                
                                    </h:panelGroup>
                                    
                                    <h:outputText  value="#{msg.cantidad} (*)"  style="width:350px;font-weight:bold;"/>
                                    <h:panelGroup>
                                        <p:inputText id="cantidadProducto" value="#{bProducto.objProductoRegistra.stockProducto}" 
                                                     size="8" maxlength="4"  required="true" requiredMessage="#{msg.datoRequerido}" 
                                                     validatorMessage="#{msg.datoValidacion}" label="Cantidad de Producto" title="Solo numeros">
                                           <f:validateLongRange minimum="1" maximum="9999"/>
                                       </p:inputText>
                                       <h:message for="cantidadProducto" showDetail="false" showSummary="true" styleClass="errors"/>                                
                                    </h:panelGroup>

                                    <h:outputText value="#{msg.motivoProducto} (*)" style="width: 350px;font-weight: bold;"/>
                                    <h:panelGroup>
                                        <p:selectOneMenu id="motivoProducto" rendered="true" requiredMessage="#{msg.datoRequerido}" 
                                                         effect="fade" value="#{bProducto.objProductoRegistra.motivoProducto}" required="true">
                                            <f:selectItem itemLabel="#{msg.elegir}" itemValue=""/>
                                            <f:selectItems value="#{parametro.getCargarCombosParametro('MOTIVO')}"/>
                                        </p:selectOneMenu>
                                        <h:message for="motivoProducto" showDetail="false" showSummary="true" styleClass="errors"/>
                                    </h:panelGroup>                                                                                                                                                                                    
                                    
                                    <p align="center">                                   
                                        <h:panelGrid columns="2" cellpadding="10"  cellspacing="10" style="text-align: center;" width="90%">                                                                    
                                            <h:panelGroup>
                                                <h:panelGrid columns="1" cellpadding="2"  cellspacing="2" style="text-align: center;" width="160%">
                                                    <p:commandButton icon="ui-icon-arrowrefresh-1-w" actionListener="#{bProducto.doIniciarRegistroProducto()}" 
                                                                     value="#{msg.limpiar}" async="true" update="formRegistroProducto"  />
                                                </h:panelGrid>
                                            </h:panelGroup>
                                            <h:panelGroup>
                                                <h:panelGrid columns="1" cellpadding="2"  cellspacing="2" style="text-align: center;" width="60%">
                                                    <p:commandButton icon="ui-icon-disk" actionListener="#{bProducto.doRegistrarProducto()}"  
                                                                     value="#{msg.guardar}" async="true" update="formRegistroProducto, estadoRegistraProducto" global="false"/>                                            
                                                </h:panelGrid>
                                            </h:panelGroup>  
                                        </h:panelGrid>
                                    </p>
                                    
                                </h:panelGrid>
                            </p:panel>
                        </h:form>
                    </p:tab>
                    
                    <!-- tab para buscar un producto -->
                    <p:tab id="tabBuscar" title="#{msg.buscar}"  >
                        <h:form id="formBuscarProductoSimple" styleClass="textoTab">
                            <p:growl globalOnly="true"  id="accion" sticky="false"  showDetail="true"  />
                            <p:panel id="panelBuscarProductoSimple" header="#{msg.buscarParametros}" style=" text-align: justify;"  >
                                <h:panelGrid columns="2"  cellpadding="2"  cellspacing="6" columnClasses="labelOT, valueOT"  >
                                    
                                    <h:outputText  value="#{msg.nombreProducto}"  style="width:350px;font-weight:bold;"/>
                                    <h:panelGroup>
                                        <p:inputText id="nombreProductoBus" value="#{bProducto.objProductoBuscar.nombreProducto}" 
                                                     size="20" maxlength="50"  title="Max 50 caracteres">
                                           <f:validateLength maximum="50" />
                                       </p:inputText>                               
                                    </h:panelGroup>
                                    
                                    <h:outputText value="#{msg.motivoProducto}" style="width: 350px;font-weight: bold;"/>
                                    <h:panelGroup>
                                        <p:selectOneMenu id="motivoProductoBus" rendered="true"  
                                                         effect="fade" value="#{bProducto.objProductoBuscar.motivoProducto}">
                                            <f:selectItem itemLabel="#{msg.elegir}" itemValue=""/>
                                            <f:selectItems value="#{parametro.getCargarCombosParametro('MOTIVO')}"/>
                                        </p:selectOneMenu>
                                    </h:panelGroup>
                                    
                                    <h:outputText value="#{msg.tipo}" style="width: 350px;font-weight: bold;"/>
                                    <h:panelGroup>
                                        <p:selectOneMenu id="tipoProductoBus" rendered="true"  
                                                         effect="fade" value="#{bProducto.objProductoBuscar.objTipoProducto.codigoTipo}">
                                            <f:selectItem itemLabel="#{msg.elegir}" itemValue=""/>
                                            <f:selectItems value="#{tipoProducto.cargarComboTipoProducto}"/>
                                        </p:selectOneMenu>
                                    </h:panelGroup>                                    
                                </h:panelGrid>
                                
                                <div align="center">
                                    <h:panelGrid columns="3" cellpadding="4"  cellspacing="4" style="text-align: center;" width="90%">
                                        <p:commandButton icon="ui-icon-arrowrefresh-1-w" actionListener="#{bProducto.doLimpiarBusquedaProductoSimple()}" 
                                                         value="#{msg.limpiar}" async="true"  update=":ProductoTabView, formBuscarProductoSimple:panelBuscarProductoSimple"/>
                                        <p:commandButton id="btnBuscarProductoSimple" icon="ui-icon-search" actionListener="#{bProducto.doListarBusquedaProductoSimple()}"  
                                                         value="#{msg.buscar}" async="true" update="formBuscarProductoSimple:panelBuscarProductoSimple"/>
                                        <p:commandButton id="btnSaveExcelTabulado" icon="ui-icon-arrowstop-1-s" actionListener="#{bProducto.doExportarBusquedaProductoSimple()}"  
                                                         value="#{msg.exportarExcel}" async="true" update="formBuscarProductoSimple:panelBuscarProductoSimple" />
                                    </h:panelGrid>
                                </div>
                                
                                <h1>
                                    <p align="center"><h:outputText styleClass="titulo" value="#{msg.resultadoBusqueda}"/></p>
                                </h1>
                                
                                <div align="center">
                                    <h:panelGrid columns="2" cellpadding="2"  cellspacing="2" rendered="#{bProducto.sizeRegistrosBusquedaProducto ne '0'}">
                                        <h:outputText styleClass="etiqueta_resultBusq" value="#{msg.resultados}"/>
                                        <h:outputText styleClass="etiqueta_resultBusq" value="#{bProducto.sizeRegistrosBusquedaProducto}"/>                                                                                                             
                                    </h:panelGrid>
                                    <br/>
                                    <h:panelGrid columns="1"  cellpadding="0"  cellspacing="0" border="0"  styleClass="width-table" rendered="#{bProducto.sizeRegistrosBusquedaProducto ne '0'}">
                                        <p:dataTable id="resultadoBusqedaProductoSimple" value="#{bProducto.arrProductoBusqueda}" var="listProducto"                                                                                         
                                                styleClass="order-table" paginator="true" rows="10" 
                                                rowsPerPageTemplate="5,10,15,20,25,30,50" 
                                                paginatorPosition="both" paginatorAlwaysVisible="true"  
                                                tableStyle="tablecolBusqSimpOrdTrab1,tablecolBusqSimpOrdTrab2,tablecolBusqSimpOrdTrab3, tablecolBusqSimpOrdTrab4, tablecolBusqSimpOrdTrab5, tablecolBusqSimpOrdTrab6">

                                            <p:column headerText="#{msg.codigo}">
                                                <h:outputText value="#{listProducto.codigoProducto}"/>
                                            </p:column>
                                            <p:column headerText="#{msg.nombre}">
                                                <h:outputText value="#{listProducto.nombreProducto}"/>
                                            </p:column>
                                            <p:column headerText="#{msg.precioSoles}">
                                                <h:outputText value="#{listProducto.precioSolesProducto}"/>
                                            </p:column>
                                            <p:column headerText="#{msg.stock}">
                                                <h:outputText value="#{listProducto.stockProducto}"/>
                                            </p:column>
                                            <p:column headerText="#{msg.motivoProducto}">
                                                <h:outputText value="#{listProducto.motivoProducto}"/>
                                            </p:column>
                                            <p:column headerText="#{msg.tipo}">
                                                <h:outputText value="#{listProducto.objTipoProducto.nombreTipo}"/>
                                            </p:column>

                                            <p:column headerText="#{msg.ver}" exportable="false">
                                                <p:commandLink  id="ver" title="ver" value="#{msg.ver}" action="#{bProducto.mostrarDetalleProducto(listProducto)}" 
                                                                actionListener="#{bProducto.onClickBusqueda}" async="true" update=":ProductoTabView, :ProductoTabView:formDetalleProducto" >
                                                    <f:attribute name="param" value="#{2}" />
                                                </p:commandLink>                                                                                                  
                                            </p:column>
                                            
                                            <p:column headerText="#{msg.editar}" exportable="false">
                                                <p:commandLink id="editar" title="editar" value="#{msg.editar}" action="#{bProducto.modificarProducto(listProducto)}" 
                                                               actionListener="#{bProducto.onClickBusqueda}" async="true" update=":ProductoTabView, :ProductoTabView:formActualizarProducto">
                                                    <f:attribute name="param" value="#{2}" />
                                                </p:commandLink>                                                
                                            </p:column>
                                            
                                        </p:dataTable>
                                    </h:panelGrid>

                                    <p:panel header="#{msg.exportarVisualizados}" rendered="#{bProducto.sizeRegistrosBusquedaProducto ne '0'}">  
                                        <h:commandLink>  
                                            <p:graphicImage value="#{msg.rutaImg}excel.png" /><h:outputText value="#{msg.exportarExcel}" />   
                                            <p:dataExporter type="xls" target="resultadoBusqedaProductoSimple" fileName="#{msg.producto}" />  
                                        </h:commandLink>    
                                    </p:panel>
                                </div>
                                
                                <p:blockUI block="panelBuscarProductoSimple" trigger="btnBuscarProductoSimple">                                               
                                    Buscando... <br />
                                    <p:graphicImage value="#{msg.rutaImg}cargando.gif" />  
                                </p:blockUI>
                                
                                <p:blockUI block="panelBuscarProductoSimple" trigger="btnSaveExcelTabulado">                                               
                                    Generando Tabulacion... <br />
                                    <p:graphicImage value="#{msg.rutaImg}cargando.gif" />  
                                </p:blockUI>
                                
                                <h:panelGrid columns="2" cellpadding="2"  cellspacing="2" style="text-align: center;" width="100%" rendered="#{bProducto.bandExportarTabBusqueda}" >
                                    <h:outputLink id="linkDescargar" title="descargar" value="#{bProducto.verDocumentoExportarProducto()}" target="_blank"  >
                                        <h:outputText value="#{msg.descargaArchivoTab}" />
                                    </h:outputLink> 
                                </h:panelGrid>                                
                            </p:panel>                           
                        </h:form>
                    </p:tab>
                    
                    <!-- tab para listar un producto --> 
                    <p:tab id="tabListarProducto" title="#{msg.listar}">
                        <h:form id="formListarProducto" styleClass="textoTab">
                            <p:panel id="datosProducto" header="#{msg.opcionListado}" styleClass="titulo"  >
                                <h:panelGrid columns="4" cellpadding="2"  cellspacing="2" style="text-align: center;" width="100%" styleClass="textoPagina">
                                    <p:commandButton id="btnNuevo" icon="ui-icon-document" actionListener="#{bProducto.doIniciarListadoProducto()}"  
                                                     value="#{msg.nuevo}" async="true" update="formListarProducto:datosProducto"/> 
                                    <p:commandButton id="btnBuscar" icon="ui-icon-search" actionListener="#{bProducto.doListarProducto()}"  
                                                     value="#{msg.ver}" async="true" update="formListarProducto:datosProducto"/>            
                                    <p:commandButton id="btnExportar" icon="ui-icon-arrowstop-1-s" actionListener="#{bProducto.doExportarProducto()}"  
                                                     value="#{msg.exportar}" async="true" update="formListarProducto:datosProducto" />                                                        
                                </h:panelGrid>
                                
                                <p:blockUI block="datosProducto" trigger="btnBuscar">                                               
                                        Generando Listado... <br />
                                        <p:graphicImage value="#{msg.rutaImg}cargando.gif" />   
                                </p:blockUI>
                                <p:blockUI block="datosProducto" trigger="btnExportar">                                               
                                         Generando Tabulacion... <br />
                                <p:graphicImage value="#{msg.rutaImg}cargando.gif" />  
                                </p:blockUI>
                                
                                <h:panelGrid columns="2" cellpadding="2"  cellspacing="2" style="text-align: center;" width="100%" rendered="#{bProducto.bandExportarTab}" >
                                    <h:outputLink id="linkDescargarTodo" title="descargar" value="#{bProducto.verDocumentoExportarProducto()}" target="_blank"  >
                                        <h:outputText value="#{msg.descargaArchivoTab}" />
                                    </h:outputLink> 
                                </h:panelGrid>
                                
                                <h:panelGrid columns="1" rendered="#{bProducto.sizeRegistrosProducto ne '0'}" styleClass="textoPagina"> 
                                    <h:panelGroup>
                                        <p align="center">                                            
                                            <h:outputText styleClass="resultadoBusqueda" value="#{msg.resultados}"/>
                                            <h:outputText styleClass="resultadoBusqueda" value="#{bProducto.sizeRegistrosProducto}"/> 
                                        </p>
                                     </h:panelGroup>
                               </h:panelGrid><br/>
                               <h:panelGrid columns="1"  cellpadding="0"  cellspacing="0" border="0"   >
                                   <p:dataTable id="listadoProducto" value="#{bProducto.arrProducto}" var="listadoProducto"   
                                                rendered="#{bProducto.sizeRegistrosProducto ne '0'}" 
                                                style="font-family: Arial, Helvetica, sans-serif;font-size: 12px;" paginator="true" rows="10" 
                                                rowsPerPageTemplate="5,10,15,20,25,30,50" paginatorPosition="both" paginatorAlwaysVisible="true">
                                       
                                       <p:column headerText="#{msg.codigo}">
                                           <h:outputText value="#{listadoProducto.codigoProducto}"/>
                                       </p:column>
                                       <p:column headerText="#{msg.nombreProducto}">
                                           <h:outputText value="#{listadoProducto.nombreProducto}"/>
                                       </p:column>
                                       <p:column headerText="#{msg.precioSoles}">
                                           <h:outputText value="#{listadoProducto.precioSolesProducto}"/>
                                       </p:column>
                                       <p:column headerText="#{msg.stock}">
                                           <h:outputText value="#{listadoProducto.stockProducto}"/>
                                       </p:column>
                                       <p:column headerText="#{msg.motivoProducto}">
                                           <h:outputText value="#{listadoProducto.motivoProducto}"/>
                                       </p:column>
                                       <p:column headerText="#{msg.tipo}">
                                           <h:outputText value="#{listadoProducto.objTipoProducto.nombreTipo}"/>
                                       </p:column>
                                       <p:column headerText="#{msg.categoria}">
                                           <h:outputText value="#{listadoProducto.objTipoProducto.objCategoria.nombreCategoria}"/>
                                       </p:column>
                                       <p:column headerText="#{msg.ver}" exportable="false">
                                           <p:commandLink  id="verDetalle" title="ver detalle" value="#{msg.ver}" action="#{bProducto.mostrarDetalleProducto(listadoProducto)}" 
                                                           actionListener="#{bProducto.onClickBusqueda}" async="true" update=":ProductoTabView, :ProductoTabView:formDetalleProducto" >
                                               <f:attribute name="param" value="#{1}" />
                                           </p:commandLink>
                                       </p:column>
                                       <p:column headerText="#{msg.editar}" exportable="false">
                                           <p:commandLink id="editarList" title="editar" value="#{msg.editar}" action="#{bProducto.modificarProducto(listadoProducto)}" 
                                                          actionListener="#{bProducto.onClickBusqueda}" async="true" update=":ProductoTabView, :ProductoTabView:formActualizarProducto">
                                               <f:attribute name="param" value="#{1}" />
                                           </p:commandLink>                                                
                                       </p:column>
                                   </p:dataTable>
                               </h:panelGrid>
                                                              
                            </p:panel>
                        </h:form>
                    </p:tab>
                    
                    <!-- tab que muestra los detalles de un producto -->
                    <p:tab id="tabDetalleProducto" title="#{msg.ver}" titletip="Detalles de Producto"  disabled="#{bProducto.bandListar}">
                        <h:form id="formDetalleProducto" class="titulo" style="text-align : justify;"  rendered="#{bProducto.bandFormListar}" >
                            <p:growl id="estadoDetalleProducto" globalOnly="true" sticky="false"  showDetail="true"  />
                            <p:panel id="verDetalleProducto" header="#{msg.datos} Producto" styleClass="border">
                                <p:fieldset legend="#{msg.datos} Producto"  styleClass="border">
                                    <h:panelGrid columns="2"  cellpadding="2"  cellspacing="6"   styleClass="panelColumns" columnClasses="labelOT, valueOT"  >
                                        <h:outputText value="#{msg.codigo}" />
                                        <h:outputText value="#{bProducto.objProductoLista.codigoProducto}"/>
                                        <h:outputText value="#{msg.nombre}" />
                                        <h:outputText value="#{bProducto.objProductoLista.nombreProducto}"/>
                                        <h:outputText value="#{msg.descripcion}" />
                                        <h:outputText value="#{bProducto.objProductoLista.descripcionProducto}"/>
                                        <h:outputText value="#{msg.precioSoles}" />
                                        <h:outputText value="#{bProducto.objProductoLista.precioSolesProducto}"/>
                                        <h:outputText value="#{msg.precioDolares}" />
                                        <h:outputText value="#{bProducto.objProductoLista.precioDolaresProducto}"/>
                                        <h:outputText value="#{msg.stock}" />
                                        <h:outputText value="#{bProducto.objProductoLista.stockProducto}"/>
                                        <h:outputText value="#{msg.motivoProducto}" />
                                        <h:outputText value="#{bProducto.objProductoLista.motivoProducto}"/>
                                        <h:outputText value="#{msg.estado}" />
                                        <h:outputText value="#{bProducto.objProductoLista.estadoProducto}"/>
                                        <h:outputText value="#{msg.tipoProducto}" />
                                        <h:outputText value="#{bProducto.objProductoLista.objTipoProducto.nombreTipo}"/>
                                    </h:panelGrid>
                                </p:fieldset>
                                
                                <h:panelGrid columns="1" cellpadding="4"  cellspacing="4" style="text-align: center;" width="100%">                                                                    
                                    <h:panelGroup>
                                        <h:panelGrid columns="1" cellpadding="2"  cellspacing="2" style="text-align: center;" width="100%">
                                            <p:commandButton icon="ui-icon-triangle-1-w" actionListener="#{bProducto.desactivaTabVer()}"  value="#{msg.aceptar}" immediate="true" async="true" 
                                                             update=":ProductoTabView, :ProductoTabView:formDetalleProducto, :ProductoTabView:formBuscarProductoSimple"/>
                                        </h:panelGrid>
                                    </h:panelGroup>  
                                </h:panelGrid>
                                
                            </p:panel>
                        </h:form>
                    </p:tab>
                    
                    <!-- tab que permite actualizar los datos de un producto -->
                    <p:tab id="tabActualizarProducto" title="#{msg.modificar}" titletip="Actualizar Producto "  disabled="#{bProducto.bandModificar}">
                        <h:form id="formActualizarProducto" class="titulo" style="text-align: justify" rendered="true">
                            <p:growl globalOnly="true"  id="estadoActualizarProducto" sticky="false"  showDetail="true"  />
                            <p:panel id="verDatosProducto" header="#{msg.listadoProducto}" styleClass="border">
                                <p:fieldset legend="#{msg.datosGenerales} Producto"  styleClass="border">
                                    <h:panelGrid columns="2"  cellpadding="2"  cellspacing="6"   styleClass="panelColumns" columnClasses="labelOT, valueOT"  >
                                        <h:outputText  value="#{msg.codigo}"  style="width:350px;font-weight:bold;"/>
                                        <h:outputText  value="#{bProducto.objProductoModifica.codigoProducto}"  style="width:350px;font-weight:bold;"/>
                                        <h:outputText  value="#{msg.nombreProducto}"  style="width:350px;font-weight:bold;"/>
                                        <h:panelGroup>
                                            <p:inputText id="nombreProductoMod" value="#{bProducto.objProductoModifica.nombreProducto}" 
                                                         size="20" maxlength="50"  required="true" requiredMessage="#{msg.datoRequerido}" 
                                                         validatorMessage="#{msg.datoValidacion}" title="Max 50 caracteres">
                                               <f:validateLength minimum="2" maximum="50" />
                                           </p:inputText>
                                           <h:message for="nombreProductoMod" showDetail="false" showSummary="true" styleClass="errors"/>                                
                                        </h:panelGroup>
                                        <h:outputText  value="#{msg.descripcion}"  style="width:350px;font-weight:bold;"/>
                                        <h:panelGroup>                                        
                                            <p:inputTextarea id="descripcionProductoMod" rows="2" cols="50"   
                                                             required="true"   requiredMessage="#{msg.datoRequerido}" title="Descripcion del Producto"
                                                             autoResize="true" value="#{bProducto.objProductoModifica.descripcionProducto}"/><br />
                                            <h:message for="descripcionProductoMod" showDetail="false" showSummary="true" styleClass="errors" />
                                       </h:panelGroup>
                                        <h:outputText  value="#{msg.precioSoles}"  style="width:350px;font-weight:bold;"/>
                                        <h:panelGroup>
                                            <p:inputText id="precioProductoMod" value="#{bProducto.objProductoModifica.precioSolesProducto}" 
                                                         size="8" maxlength="4"  required="true" requiredMessage="#{msg.datoRequerido}" 
                                                         validatorMessage="#{msg.datoValidacion}" label="Precio de Producto:" title="Solo numeros">
                                                <f:validateDoubleRange minimum="1" maximum="9999" />
                                           </p:inputText>
                                           <h:message for="precioProductoMod" showDetail="false" showSummary="true" styleClass="errors"/>                                
                                        </h:panelGroup>
                                        <h:outputText  value="#{msg.stock}"  style="width:350px;font-weight:bold;"/>
                                        <h:panelGroup>
                                            <h:outputText  value="#{bProducto.objProductoModifica.stockProducto}"  style="width:350px;font-weight:bold;"/><br/>
                                            <p:inputText id="cantidadProductoMod" value="#{bProducto.objProductoModifica.nuevoStockProducto}"                                                         
                                                         size="8" maxlength="4" label="Cantidad de Producto"
                                                         validatorMessage="#{msg.datoValidacion}" title="La cantidad de productos que ingrese sera sumada a la cantidad que se encuentra actualmente">
                                                <f:validateLongRange minimum="1" maximum="9999" />
                                           </p:inputText>
                                            <h5 style="color: red">NOTA: La cantidad de productos que ingrese sera sumada a la cantidad que se encuentra actualmente</h5>
                                           <h:message for="cantidadProductoMod" showDetail="false" showSummary="true" styleClass="errors"/>                                
                                        </h:panelGroup>
                                        <h:outputText  value="#{msg.motivoProducto}"  style="width:350px;font-weight:bold;"/>
                                        <h:panelGroup>
                                            <p:selectOneMenu id="motivoProductoMod" rendered="true" requiredMessage="#{msg.datoRequerido}" 
                                                             effect="fade" value="#{bProducto.objProductoModifica.motivoProducto}" required="true">
                                                <f:selectItem itemLabel="#{msg.elegir}" itemValue=""/>
                                                <f:selectItems value="#{parametro.getCargarCombosParametro('MOTIVO')}"/>
                                            </p:selectOneMenu>
                                            <h:message for="motivoProductoMod" showDetail="false" showSummary="true" styleClass="errors"/>
                                        </h:panelGroup>
                                        <h:outputText  value="#{msg.estado}"  style="width:350px;font-weight:bold;"/>
                                        <h:panelGroup>
                                            <p:selectOneMenu id="estadoProductoMod" rendered="true" requiredMessage="#{msg.datoRequerido}" 
                                                             effect="fade" value="#{bProducto.objProductoModifica.estadoProducto}" required="true">
                                                <f:selectItem itemLabel="#{msg.elegir}" itemValue=""/>
                                                <f:selectItems value="#{parametro.getCargarCombosParametro('ESTADO1')}"/>
                                            </p:selectOneMenu>
                                            <h:message for="estadoProductoMod" showDetail="false" showSummary="true" styleClass="errors"/>
                                        </h:panelGroup>
                                        <h:outputText  value="#{msg.tipo}"  style="width:350px;font-weight:bold;"/>
                                        <h:panelGroup>
                                            <h:outputText  value="#{bProducto.objProductoModifica.objTipoProducto.nombreTipo}"  style="width:350px;font-weight:bold;"/><br/>
                                            <p:selectOneMenu id="tipoProductoMod" rendered="true" requiredMessage="#{msg.datoRequerido}" 
                                                         effect="fade" value="#{bProducto.objProductoModifica.objTipoProducto.codigoTipo}" required="true">
                                                <f:selectItem itemLabel="#{msg.elegir}" itemValue=""/>
                                                <f:selectItems value="#{tipoProducto.cargarComboTipoProducto}"/>
                                            </p:selectOneMenu>
                                            <h:message for="tipoProductoMod" showDetail="false" showSummary="true" styleClass="errors"/>
                                        </h:panelGroup>
                                        
                                    </h:panelGrid>
                                </p:fieldset>
                            </p:panel>
                            
                            <h:panelGrid columns="2" cellpadding="4"  cellspacing="4" style="text-align: center;" width="100%">
                                <h:panelGroup>
                                    <h:panelGrid columns="1" cellpadding="2"  cellspacing="2" style="text-align: center;" width="100%">
                                        <p:commandButton icon="ui-icon-triangle-1-w" actionListener="#{bProducto.desactivaTabMod()}"   value="#{msg.volver}" 
                                                         immediate="true" async="true" update=":ProductoTabView, :ProductoTabView:formListarProducto, :ProductoTabView:formBuscarProductoSimple"/>
                                    </h:panelGrid>
                                </h:panelGroup>
                                <h:panelGroup>
                                    <h:panelGrid columns="1" cellpadding="2"  cellspacing="2" style="text-align: center;" width="100%">
                                        <p:commandButton icon="ui-icon-arrowrefresh-1-s" actionListener="#{bProducto.doModificarProducto()}"  value="#{msg.modificar}" 
                                                         async="true" update=":ProductoTabView, :ProductoTabView:formListarProducto, :ProductoTabView:formBuscarProductoSimple"/>
                                    </h:panelGrid>
                                </h:panelGroup> 
                            </h:panelGrid>
                            
                        </h:form>
                    </p:tab>                                        
                    
                    
                </p:tabView>
            </ui:define>
        </ui:composition>
    </h:body>
</html>